

package main.new_2024.month_03;


/**
 * @Description: todo 2129. 将标题首字母大写
 * 给你一个字符串 title ，它由单个空格连接一个或多个单词组成，每个单词都只包含英文字母。请你按以下规则将每个单词的首字母 大写 ：
 *
 * 如果单词的长度为 1 或者 2 ，所有字母变成小写。
 * 否则，将单词首字母大写，剩余字母变成小写。
 * 请你返回 大写后 的 title 。
 *
 * @Author: Take-off
 * @Date: 1:00 PM 2024/2/27
 * @Param:
 * @return:
 **/
public class Solution0311 {

    //将标题首字母大写
    public String capitalizeTitle(String title) {
        //a-97;z-122;A-65;Z-90;
        StringBuilder sb = new StringBuilder();
        String[] split = title.split(" ");
        for (String temp:split){
            char[] chars = temp.toCharArray();
            if (chars.length > 2){
                //转大写
                char first= chars[0] > 96 ? (char) (chars[0] - 32) :  chars[0];
                sb.append(first);
            }else {
                //转小写
                char tempC= chars[0] > 96 ? chars[0] :  (char) (chars[0] + 32) ;
                sb.append(tempC);
            }
            for (int i = 1;i<chars.length;i++){
                //转小写
                char tempC= chars[i] > 96 ? chars[i] :  (char) (chars[i] + 32) ;
                sb.append(tempC);
            }
            sb.append(" ");
        }
        return sb.substring(0,sb.length()-1);
    }

    public static void main(String[] args) {
        Solution0311 test = new Solution0311();
        String title = test.capitalizeTitle("First leTTeR of EACH Word");
        System.out.println(title);
    }
}

